package cn.nawang.ebeim.server.thread;

import cn.nawang.ebeim.server.constants.Constant;
import cn.nawang.ebeim.server.entity.StorageFileToDoView;
import cn.nawang.ebeim.server.queue.EbeimQueues;
import cn.nawang.ebeim.server.task.HandleFileTodoTask;
import cn.nawang.ebeim.server.util.ApiVisitUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.util.List;

/**
 * @ClassName: ReadFileTodoThread
 * @Description: TODO
 * @author 许炜毅
 * @date 2015年8月27日 下午2:39:03
 * @version v1.0
 */
public class ReadFileTodoThread implements Runnable{

  private static final Logger LOG = LoggerFactory.getLogger(ReadFileTodoThread.class);

  public void run() {
    while (true) {
      try {
        List<StorageFileToDoView> list = ApiVisitUtil.getStorageFileToDoList();
        LOG.info("Producing tasks :{}" , list.size());
        if (list!=null && !list.isEmpty() && list.size() > 0) {
          EbeimQueues.handleFileTodoQueue.put(new HandleFileTodoTask(list));
        }
        Thread.sleep(Constant.DATA_TRANSFER_INTERVAL);
      } catch (Exception ex) {
        ex.printStackTrace();
      }
    }
  }

}
